package com.zgw.his.design.common;

import java.util.Arrays;

/**
 * 对象唯一标识工具类，列出了几种取标识计算方法
 * */
public final class IdentifyHelp {

	/**
	 * 获得一个数组之外最小正整数
	 * */
	public final static Long getMinExceptList(Long[] array) {
		if (array == null || array.length == 0)
			return 0L;

		long result = 0;
		Arrays.sort(array);
		result = array[array.length - 1] + 1; // 默认取最大值+1
		for (int i = 0; i < array.length - 1; i++) {
			if (array[0] > 0) {
				result = 0;
				break;
			} else if (array[i] < 0 && array[i + 1] > 0) {
				result = 0;
				break;
			} else if (array[i] > -1 && array[i + 1] - array[i] > 1) {
				result = array[i] + 1;
				break;
			}
		}
		return result;
	}
}
